1
メモリ管理のジレンマ
AI034Lesson 4
00:00

数十年にわたり、システムプログラミングは二項的対立に陥っていました: コントロールのジレンマ。C/C++のような言語では、完全なコントロールを持ちながらも、手動管理の負担を背負います——一つの free() 呼び忘れが致命的なリークを引き起こします。逆に、JavaやGoなどの言語は ガベージコレクション(GC)によって安全を確保しますが、予測不可能な「世界停止」ポーズによりパフォーマンスを犠牲にしており、高頻度取引やリアルタイムシステムを台無しにする可能性があります。

第三の道:所有権

Rustは、メモリ管理を ランタイム から コンパイラへと移行することでこのジレンマを解決します。厳密な 所有権ルールセットを通じて、コンパイラはすべてのバイトのライフサイクルを追跡します。あなたが $ cargo runを実行すると、 借用チェッカー が、メモリが有効で、一意であり、安全であることを検証します。バックグラウンドのコレクターも、手動での解放も必要ありません。

手動管理(C/C++)高いリスク / 高いコントロールGC(Java/Go)高い安全性 / 低いコントロールRUSTコンパイラの橋渡しcargo run ✓

ターミナルによる検証

使用することで cargo run、メモリの安全性は コンパイル時保証になります。ルール違反がある場合、プログラムは単にビルドされず、生産環境に到達する前にクラッシュを防ぎます。

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>